import axios from 'axios';

// 创建axios实例
const apiClient = axios.create({
  baseURL: 'http://localhost/mafengwo_project/my_bankend_project/public/api',
  timeout: 10000,
  headers: {
    'Content-Type': 'application/json'
  }
});

// API请求拦截器
apiClient.interceptors.request.use(
  config => {
    // 可以在这里添加token等认证信息
    return config;
  },
  error => {
    return Promise.reject(error);
  }
);

// API响应拦截器
apiClient.interceptors.response.use(
  response => {
    return response.data;
  },
  error => {
    console.error('API请求错误:', error);
    return Promise.reject(error);
  }
);

// 目的地相关API
export const destinationApi = {
  // 获取所有目的地列表
  getAllDestinations() {
    return apiClient.get('/destinations');
  },
  
  // 获取单个目的地详情
  getDestinationById(id) {
    return apiClient.get(`/destinations/${id}`);
  },
  
  // 搜索目的地
  searchDestinations(query, category = null) {
    const params = { q: query };
    if (category) {
      params.category = category;
    }
    return apiClient.get('/destinations/search', { params });
  },
  
  // 创建新目的地
  createDestination(data) {
    return apiClient.post('/destinations', data);
  },
  
  // 更新目的地
  updateDestination(id, data) {
    return apiClient.put(`/destinations/${id}`, data);
  },
  
  // 删除目的地
  deleteDestination(id) {
    return apiClient.delete(`/destinations/${id}`);
  },
  
  // 健康检查
  healthCheck() {
    return apiClient.get('/health');
  }
};

export default apiClient;